package com.ygqh.baby.token;

import com.foxinmy.weixin4j.exception.WeixinException;
import com.ygqh.baby.cache.CacheManager;
import com.ygqh.baby.cache.RedisCacheStorager;
import com.ygqh.baby.exception.CacheException;

/**
 * 对token的缓存获取
* @ClassName: TokenManager 
* @author (guohao)  
* @date 2018年6月28日 下午1:32:44 
* @version V1.0
 */
public class TokenManager extends CacheManager<Token> {
	/**
	 *
	 * @param tokenCreator
	 *            负责token的创建
	 * @param cacheStorager
	 *            负责token的存储
	 */
	public TokenManager(TokenCreator tokenCreator, RedisCacheStorager<Token> cacheStorager) {
		super(tokenCreator, cacheStorager);
	}

	/**
	 * 获取token字符串
	 *
	 * @return token字符串
	 * @throws WeixinException
	 */
	public String getAccessToken() throws CacheException {
		return super.getCache().getAccessToken();
	}

	/**
	 * 返回唯一标识ID
	 *
	 * @return
	 */
	public String getUniqueid() {
		return ((TokenCreator) cacheCreator).uniqueid();
	}
}
